#include <iostream>
#include <ctime>
#include <fstream>

using namespace std;

void bubbleSort(int list[], int listLength){
    while(listLength--){
        bool swapped = false;

       for(int i=0; i<listLength; i++){
            if(list[i] > list[i+1]){
                swap(list[i], list[i+1]);
                swapped = true;
            }
       }
       if(swapped==false)break;
    }
}
void read_from_file(const char *filename, int a[], int length){

    ifstream file(filename);
    for(int i=0;i<lenght;i++)
        file>>a[i];
}


int main()
{
    const int LEN = 5000;
    int a[LEN];

    read_from_file("m1_sorted.txt ", a, LEN);
    unsigned int t_start = clock();
    bubbleSort(a, LEN);
    unsigned int t_finish = clock();
    unsigned int t_work = t_finish - t_start;
    cout << "m1_sorted " << t_work << " milliseconds \n";

    read_from_file("m2_reverse.txt", a, LEN);
    t_start = clock();
    bubbleSort(a, LEN);
    t_finish = clock();
    t_work = t_finish - t_start;
    cout << "m2_reverse " << t_work << " milliseconds \n";

    read_from_file("m3_shuffle.txt", a, LEN);
    t_start = clock();
    bubbleSort(a, LEN);
    t_finish = clock();
    t_work = t_finish - t_start;
    cout << "m3_shuffle " << t_work << " milliseconds \n";

    return 0;
}
